package com.young.launch_task_init.core.task.base

import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.Dispatchers

/**
 * Author：young
 * .
 * Time： 1/4/2023 上午1:07 周六
 * .
 * Desc：基础的任务
 */
abstract class BaseTask : ITask {
    /** 初始化完成，由子类标记完成 **/
    protected var isInitCompleted = false

    override fun getName(): String {
        return this::class.java.simpleName
    }

    override fun isComplete(): Boolean {
        return isInitCompleted
    }

    override fun getCoroutineDispatcher(): CoroutineDispatcher {
        return Dispatchers.IO
    }

    /**
     * 获取参数拼接的字符串
     */
    protected fun getParamStr(): String {
        return "isInitCompleted=${isInitCompleted}"
    }
}